All Interview Experiences

DP World Frontend Interview Experience | Refused Offer

SDE1 @ DP World

Bangalore, India

Mar 2025

Moderate3 Rounds
REFUSED OFFER

💸Compensation Range

₹32.5L + 4.5L Variable + 4L Other Bonus

🎯How landed on the interview?

Applied through company's job portal.

Round 1: DSA

Moderate1 hr

Coding Challenge

Flatten a nested JavaScript object into a key-value pair format.

Solution

let user = {
    name: 'John',
    address: {
        country: 'India',
        state: 'India',
        education: {
            school: "APS",
            year: 2021
        }
    }
};

function flattenObject(obj = {}, parentKey = '') {
    return Object.keys(obj).reduce((acc, key) => {
        let updatedKey = parentKey ? `${parentKey}.${key}` : key;
        if (typeof obj[key] === 'object' && obj[key] !== null) {
            Object.assign(acc, flattenObject(obj[key], updatedKey));
        } else {
            acc[updatedKey] = obj[key];
        }
        return acc;
    }, {});
}

let result = flattenObject(user, 'user');
console.log(result);

Output

{
  'user.name': 'John',
  'user.address.country': 'India',
  'user.address.state': 'India',
  'user.address.education.school': 'APS',
  'user.address.education.year': 2021
}

Other Question Asked

  • Build a Progress Bar component with Start, Stop, Pause, and Reset buttons.
  • Closures in JavaScript — Why are they useful?
  • Is JavaScript single-threaded? How does it behave in the browser?
  • Features other languages have but JavaScript lacks.

Round 2: Machine Coding

Hard1 hr

Key Questions

  • React Version & New Hooks — Which version do you use, and what new hooks were introduced?
  • Problem Solving: React re-render issue with useEffect, solved using the key prop.
  • Machine Coding: Implement a Breadcrumb Component for nested objects (similar to a Folder Structure).
  • SSR vs CSR: How does Server-Side Rendering (SSR) impact performance?
  • Performance Optimization: React re-renders, caching, memory management.
  • Async vs Defer: How do they affect script loading and execution?

Round 3: Frontend System Design

Moderate1 hr

System Design - Button Component

const VARIANT = {
    PRIMARY: 'PRIMARY',
    SECONDARY: 'SECONDARY'
};

const Button = ({ 
  text = '', 
  onClickHandler = () => {}, 
  isLoading = false, 
  isDisabled = false, 
  variant = VARIANT.PRIMARY 
}) => {

    return (
        <button
            className={`button ${variant}`}
            disabled={isDisabled || isLoading}
            onClick={onClickHandler}
        >
            {text}
        </button>
    );
};

CSS Styles

.button.PRIMARY {
    color: black;
    background: white;
}
.button.SECONDARY {
    color: white;
    background: black;
}

Other Questions

  • URL Shortener Design: How does frontend handle redirections (301, 404)?
  • Performance Metrics: CLS, LCP, async-defer handling.
  • Handling Disagreements: What if your manager doesn’t agree with you?
  • Team Conflicts: Have you had any in past roles? How did you resolve them?
  • Why DP World? Why Leaving Cars24?

Final Thoughts

I had 2 years and 10 months of experience, but DP World requires 3 full years for an SDE-2 position. If I had applied just 2 months later, I could have gotten SDE-2, which I was aiming for. 💡 Final Thought: I declined the offer respectfully. If they had mentioned this in Round 1, I wouldn’t have spent so much time. But thanks to DP World for the opportunity!

Share with your network

Advertisement

💬 Comments (0)

Login to comment

Advertisement

Share Your Interview Experience & Help your Peers

Consider sharing your Interview Experiences because others are sharing for you 💕. Your Interview Experience can help Frontend Community in a very big way.

Other Interview Experiences

Detailed Frontend Interview Experience at Intuit for SE2

Moderate6 Rounds
GHOSTED

Interview Experience at Swiggy | Frontend SDE2

Moderate2 Rounds
SELECTED

Uber Frontend Interview Experience

Moderate6 Rounds
NOT SELECTED

DP World Frontend Interview Experience

Moderate4 Rounds
SELECTED

Frontend Interview experience at PayPal | Failed in Dream Interview

Moderate2 Rounds
GHOSTED

My Frontend Interview Experience with Adobe for Computer Scientist

Hard4 Rounds
NOT SELECTED

Advertisement

FrontendGeek
FrontendGeek

© 2024 FrontendGeek. All rights reserved